Welcome to the github home for RAMP-Uganda.
Our goal is to develop and implement Adaptive Malaria Control, working in collaboration with the National Malaria Control Division (NMCD) and Division of of Health Information (DHI) of Uganda’s National Ministry of Health.
Adaptive malaria control is a structured, iterative approach to developing malaria policy that is guided by a bespoke inferential system called RAMP (Robust Analytics for Malaria Policy) that emphasizes analysis that characterizes, quantifies, and propagates uncertainty. Malaria intelligence – information about malaria needed to support policy – is developed around stable information systems that involve involve data processing and curation, the transformation of data into information through data analysis, and estimation and imputation to quantify key aspects of malaria transmission, mosquito ecology, human care seeking behaviors, and health systems. We develop malaria intelligence to evaluate policies using simulation-based analytics, including analyses to optimize the allocation of resources, improve technical efficiency, and develop strategy and evidence-based policies to reduce burden and eliminate malaria. Malaria is managed on monthly and annual cycles, and on multi-year funding and strategic planning cycles. Adaptive malaria control must support these policy cycles through development of protocols and procedures for repeated analysis to ensure policy advice is consistent, that it is of the highest quality, and that it is updated to be responsive to changing needs. Through careful analysis of uncertainty and through consultation with program managers, surveillance systems are reviewed to identify key data gaps, and plans are made to fill those gaps and improve future decisions.
Data Warehouse — development of a data warehouse, including processing pipelines and stable data assets to support robust analytics
Routine Analysis — routine reporting and routine analytics to support NMCD operations
Malaria Intelligence — information that is of direct value for strategic planning for malaria policy
Robust Analytics — robust, simulation-based analytics
Adaptive Control — evaluating and prioritizing data gaps
The first step is to ensure that we have a set of high-quality DATA ASSETS organized in a DATA WAREHOUSE
Malaria data is of little use if it is not routinely used, so we have developed data processing pipelines. We call these ETL pipelines because they extract the data from various sources, transform the data – basic data cleaning tasks such as identification of outliers, consistency checks, and imputation of missing and outliered data – while tracking modifications with version control, and load the data in a format that can be used for analysis by many different parties. The endpoint of the ETL pipeline is a version controlled data asset.
Human Demography / Basic Information
Location / GIS
Human Demographic Data
Malaria Surveillance
Uganda’s Ministry of Health maintains a health management information system (HMIS). Data from all public and some private facilities is collected and maintained by the Division of Health Information (DHI) in a DHIS-2 database. The current DHIS-2 instance started on
Facility Data
Community Health Workers
Entomological Surveillance
Malaria Research
We are also interested in using high-quality malaria research data to supplement Uganda’s HMIS data. To this end, we have partnered with the Malaria Atlas Project (MAP) and Vector Atlas.
Malaria Atlas Project
Vector Atlas
Weather Data
To save lives and set the stage for malaria elimination, Uganda’s National Malaria Control Division (NMCD) has and the Division of Health Information (DHI) are collaborating to organize a data warehouse that holds up-to-data of all sorts describing malaria in Uganda for public use. The primary data source is the DHIS2.
WEEKLY FACILITY DATA lives on Box
MONTHLY FACILITY DATA lives on Box
Community Case Workers …
We would like to be able to develop maps of various quantities at \(1\) km \(\times 1\) km, and aggregate up to sub-county, district, and region.
Current (all in Box):
MASTER FACILITY LIST
REGIONAL SHAPE FILES
DISTRICT SHAPE FILES
SUB-COUNTY SHAPE FILES
MAP RASTER (see MAP)
SPATIAL HIERARCHIES
We need an estimate of population density by age and sex at \(1\) km \(\times 1\) km
HRSL - high resolution settlement layer
UNWPP - Human population by age
At the moment PfPR data are out of date. We want to make sure that we continue to work with MAP to ensure that they have up-to-date PfPR data.
We need a plan.
Present Location / Spatial Hierarchies to DHI / NMCD
Present Facility Data Assets to NMCD (coordinate with DHI)
The second step is to organize Analysis & Reporting
Weekly Reporting
Monthly Reporting
Quarterly Reporting
Outbreaks
Tom
Weekly Report Maker
Weekly Reports
We define malaria intelligence as information that is needed for malaria policy.
Catchments – Our goal is to understand malaria transmission at a local level. To this end, we need to use the spatial location information in the DHIS2 to develop detailed maps of various quantities. Using the MAP raster, high-resolution spatial layers describing malaria population, friction surfaces, and human population census data, we need to develop models for catchment / service populations.
Drug taking – How much has drug taking modified the processes we can identify?
PfPR - The prevalence of infection by age / sex / season / location
Transmission / Connectivity - PfEIR, \(R_C\), \(R_0\)
Task - Given a database describing a statistic at facilities, develop an estimate of that statistic for a gridded population surface.
Where do people seek treatment?
How many people live in the area that reports to each facility?
Which facility would they report to?
How many times does a person take drugs to treat malaria in a year?
What fraction of times does a person take the full course of drugs?
What fraction of severe malaria cases are promptly treated?
Data Sources - The MIS / DHS question about the likelihood of treating a fever.
TPR \(\rightarrow\) PfPR (Cross Walking - Jaffer)
PfPR / PfEIR
The end point of cross walking is a set of PfPR estimates for specific age groups, based on the MAP PfPR databases and facility-based TPR data
## Linking to GEOS 3.11.0, GDAL 3.5.3, PROJ 9.1.0; sf_use_s2() is TRUE
In malaria research, more than 150 studies have estimated the PfEIR and the PfPR in the same population at roughly the same time.
We have developed algorithms that compute the PfEIR - PfPR relationships that are fitted to these data.
library(ramp.xds)
Xo = list(delta=2/365, rho=0.3)
mod <- xds_setup_cohort(Xname= "SIP", Xopts=Xo)
mod <- xde_scaling_eir(mod, 25)
xde_pr2eir(sf_max$avg_pfpr, mod, TRUE)$eir -> eir
plot(sf_max$avg_pfpr, 365*eir)
Most people sleep in their own bed around 95% of all nights (\(\delta \approx .05\))
Most people spend most of their time traveling close to home, but some people go really far away. From this, we can construct a time spent matrix, \(\Theta\) and derive a mixing matrix, \(\beta\)
The observed PfPR is the result of all exposure, including exposure here and exposure while traveling. We have estimated all exposure, \(\tilde E\)
\[\tilde E = (1-\delta) E_l + \delta E_t\] but \(E_t = \beta \cdot E_l\) so
\[\tilde E = (1-\delta) E + \delta \left( \beta \cdot E \right)\]
so
\[ E = \left( \mbox{diag}\left(1-\delta\right) + \mbox{diag}\left(\delta \right)\cdot \beta\right)^{-1} \cdot \tilde E\]
PfPR is the result of exposure from all sources, including from travel. Let \(x_0\) denote PfPR before control and \(x_1\) after control, and let \(E_0\) be the associated baseline aEIR under a model, and \(E_1\) the associated post control aEIR.
If nothing else has changed, then the effect size of the changes (\(\epsilon\)) is:
\[\epsilon = E_0 / E_1\]
The total effect size includes:
Any temporal changes associated with weather, …
The effects of control
In any model, we can go from \[x \rightarrow E \rightarrow fqZ \rightarrow M \rightarrow \Lambda\]
Given a fitted model, \(\cal M,\) we can now compute
\(R_0\) - the basic reproductive number
\(R_c\) - the adjusted reproductive number
Challenges:
It’s easy enough to compute \(\Lambda\), but the resulting values derived mathematically are sometimes unrealistic, so all this has to be done computationally, under an objective function.
Vector species mixes
Insecticide resistance
Robust Analytics
Organized pipelines:
mod <- xds_setup(Xname = "SIS", MYZname="si", HPop = sf_max$population, residence = 1:146, nPatches=146)
inferno(90)[127-round((sf_max$population)^(1/3))] -> clrs
plot(st_geometry((sf_max)), col = clrs)
hist(sf_max$peak_week)
points(1:52, rep(0, 52), pch = 15, col = turbo(52), main = "peak")
turbo(52)[round(sf_max$peak_week)] -> clrs
plot(st_geometry((sf_max)), col = clrs)
pk = sf_max$peak_week
Fs = function(t, pk){1+cos(2*pi*(t-pk*7)/365)}
tt = 1:365
plot(tt, Fs(tt, pk[1]), type = "n")
points(1+0*pk, Fs(1, pk))
We store information about PfEIR.
Step-Ahead
Early Warning Systems
5-year
t = 0:60
F_trend = function(t){3 + .1*t/12}
F_season = function(t){(cos(2*pi*t*30/365))/5}
pattern = F_trend(t) + F_season(t)
data = pattern + rnorm(61,0,.1)
plot(t, pattern, type = "l", ylim = range(data), xlim = c(0,72))
points(t, data)
lines(c(0:72), F_trend(c(0:72)), col = "blue")
We discuss possible intervention packages with NMCD.
Understand the budget constraints
Construct an objective function
We evaluate optimal suites of interventions. Let \(\cal S\) denote construct from the posterior or choose an element from the posterior
\(\cal S\) - PfPR surface, \(x\)
\(\cal S\) - human population
\(\cal S\) - catchment
\(\cal S\) - Calibrate a model
\(\cal S\) - Module parameters, Time Spent, Mosquito Dispersal, …
adjust \(\bar \Lambda\) such that \(F_pr(\cal M (t)) \rightarrow x(t)\)
Simulate with different policy options, compare, output policy recommendation